1. Introduction
Global navigational satellite systems (GNSS) include Global Positioning System (GPS) (United States), GLONASS (Russia), Galileo (Europe) and COMPASS (China) (systems in use or in development). A GNSS typically uses a plurality of satellites orbiting the earth. The plurality of satellites forms a constellation of satellites. A GNSS receiver detects a code modulated on an electromagnetic signal broadcasted by a satellite. The code is also called a ranging code. Code detection includes comparing the bit sequence modulated on the broadcasted signal with a receiver-side version of the code to be detected. Based on the detection of the time of arrival of the code for each of a series of the satellites, the GNSS receiver estimates its position. Positioning includes geolocation, i.e. the positioning on the surface of the Earth.
An overview of GPS, GLONASS and Galileo is provided in sections 2.1.1, 2.1.2 and 2.1.3 of Sandra Verhagen, The GNSS integer ambiguities: estimation and validation, Delft University of Technology, 2004, ISBN 90-804147-4-3 (herein referred as “[1]”) (which was also published in Publications on Geodesy 58, Delft, 2005, ISBN-13: 978 90 6132 290 0, ISBN-10: 90 6132 290).
Positioning using GNSS signal codes provides a limited accuracy, notably due to the distortion the code is subject to upon transmission through the atmosphere. For instance, the GPS includes the transmission of a coarse/acquisition (C/A) code at 1575.45 MHz, the so-called L1 frequency. This code is freely available to the public, in comparison to the Precise (P) code, which is reserved for military applications. The accuracy of code-based positioning using the GPS C/A code is approximately 15 meters, when taking into account both the electronic uncertainty associated with the detection of the C/A code (electronic detection of the time of arrival of the pseudorandom code) and other errors including those caused by ionospheric and tropospheric effects, ephemeris errors, satellite clock errors and multipath propagation.
An alternative to positioning based on the detection of a code is positioning based on carrier phase measurements. In this alternative approach, the carrier phase of the GNSS signal transmitted from the satellite is detected, not the code modulated on the signal transmitted from the satellite.
The approach based on carrier phase measurements has the potential to provide much greater position precision, i.e. up to centimeter-level or even millimeter-level precision, compared to the code-based approach. The reason may be intuitively understood as follows. The code, such as the GPS C/A code on the L1 band, is much longer than one cycle of the carrier on which the code is modulated. The position resolution may therefore be viewed as greater for carrier phase detection than for code detection.
However, in the process of estimating the position based on carrier phase measurements, the carrier phases are ambiguous by an unknown number of cycles (this is for instance explained in [1], section 1.1, second paragraph). The phase of a received signal can be determined, but the cycle cannot be directly determined in an unambiguous manner. This is the so-called “integer ambiguity problem”, “integer ambiguity resolution problem” or “phase ambiguity resolution problem”.
GNSS observation equations for code observations and for phase observations are for instance provided in [1], respectively sections 2.2.1 and 2.2.2. An introduction to the GNSS integer resolution problem is provided in [1], section 3. The idea of using carrier phase data for GNSS positioning was however already introduced in 1984 in Remondi, Using the Global Positioning System (GPS) Phase Observable for Relative Geodesy: Modeling, Processing and Results, Center for Space Research, The University of Texas at Austin, May, 1984 (herein referred as “[2]”).
The basic principles of the GNSS integer resolution problem will be now explained with reference to FIGS. 1 to 4. Further explanations are then provided, with mathematical support and explanations of the further factors generally involved in implementing an integer resolution system for precise position estimation.